The present invention relates to wirebonding. More particularly, the present invention relates to dynamic placement and adjustment of bond fingers on an Integrated Circuit (IC) package.
Wirebonding is a technique for establishing electrical connectivity between an IC component and a package substrate. This involves soldering wires between two pads. The first pad is on an IC's top metal layer, which is exposed through a passivation opening and the second pad is on the package substrate, which is exposed through an opening in a solder mask layer. The wire follows a three-dimensional (3D) profile through the surrounding air, instead of following a two-dimensional (2D) path. Generally, the 2D path is followed during a single-layer trace.
The fundamental difference with the 3D profile of the wire arises because the bond wires float in space. As a result, they follow a completely free path in all the three axes. Further, bond wires are subjected to flexing and bending during the manufacturing process. By way of example, the bond wires may flex and bend when the air beneath the wires gets filled as a part of the final manufacturing process. The greater the separation between two neighboring bond wires, the greater the rate of fill. Therefore, the pressure on the bond wires varies across a wirebond pattern. This results in various design problems and wirebond-related shorts. Wirebond-related shorts refer to failures that involve the occurrence of unintended electrical shorting between the bond wires. These include bond-to-bond shorting, wire-to-die shorting, and wire-to-wire shorting.
Several conventional methods have been used to compute the placement and rotation of the bond fingers on the package substrate by using auto-routing technologies for a 2.5-dimensional (2.5D) problem. These auto-routing technologies also compute the end points of the bond wires that are attached to the power and ground rings on the package surface. By way of example, consider a wirebond pattern with two rows of bond fingers, one power, and one ground ring. While ring tack points follow the mid-point of the shape outline, the placement of the bond fingers follows pre-defined user path(s). These paths may be straight-line segments, arcs, or a combination thereof. Further, the placement of the bond fingers is governed by a complex set of physical and spacing rules.
Such rules are applied to the bond fingers and the bond wires. By way of example, in accordance with the rules, two bond wires at the same height cannot cross each other. However, two bond wires that are at different heights, though originating from the same die, may cross as long as the vertical spacing between them is sufficient. Further, auto-routing technologies involve running conducting traces at any angle in the x- and y-axis, but are limited to orthogonal movement in the z-axis. For this reason, wirebonding, which is a 3D problem, is not addressed by auto-routing technologies.
The 3D problem has been solved by another wirebond algorithm. This algorithm is based on batch-driven pattern cleanup. The control values for the batch-driven pattern are entered by the user. If failures occur, the user modifies one or more control values and runs the batch process again. Such a batch-driven pattern involves trial and error during pattern refinement. Any refinements made to the pattern later, when necessitated by design of the rest of the package substrate, must be performed in a similar trial-and-error model.
Another wirebond algorithm that reduces trial and error during pattern refinement involves automatic initial generation, which is based on highly customizable placement rules and parameters. These values are stored after initial setup, and can be recalled to correct and update the pattern on the fly as the user requests changes. However, these parameters result in high levels of tweaking and render the user interface cumbersome.
In light of the foregoing discussion, a need exists for a method and system for dynamic placement and adjustment of bond fingers on an IC package. Such an algorithm should be applicable for 3D routing problems. The present invention addresses such a need.